package com.tagtraum.perf.gcviewer;

//package com.java.diagnostics.visualizer.sources;

import com.java.diagnostics.visualizer.exceptions.GCAndMemoryVisualizerException;
import java.io.BufferedReader;
import java.io.InputStream;
import java.util.Set;

public abstract interface Source
{
  public abstract String getName();

  public abstract String getVariantIdentifier();

  public abstract String getText()
    throws GCAndMemoryVisualizerException;

  public abstract InputStream getStream()
    throws GCAndMemoryVisualizerException;

  public abstract BufferedReader getSafeBufferedStreamReader()
    throws GCAndMemoryVisualizerException;

  public abstract boolean hasChangedSinceLastGet();

  public abstract boolean containsWithinReasonableDistanceOfStart(String paramString)
    throws GCAndMemoryVisualizerException;

  public abstract boolean containsWithinReasonableDistanceOfStart(String[] paramArrayOfString)
    throws GCAndMemoryVisualizerException;

  public abstract long getApproximateSize()
    throws GCAndMemoryVisualizerException;

  public abstract void addSpecificContentType(String paramString);

  public abstract Set getSpecificContentTypes();

  public abstract void addGeneralContentType(String paramString);

  public abstract Set getGeneralContentTypes();

  public abstract int getOffset(int paramInt);

  public abstract int getSequenceUID(int paramInt);

  public abstract void resetPositions();
}
